FieSta: An approach for Fine-Grained Scope Definition, Configuration and Derivation of Model-Driven Software Product Lines
نویسنده
چکیده
We present FieSta, an approach based on Model-Driven Development ideas to create Software Product Lines (SPLs). In Model-Driven SPL approaches, the derivation of a product starts from a domain application model. This model is transformed through several stages reusing model transformation rules until a product is obtained. Transformations rules are selected according to variants included in con gurations created by product designers. Con gurations include variants from variation points, which are relevant characteristics representing the variability of a product line. FieSta (1) provides mechanisms to improve the expression of variability of Model-Driven SPLs by allowing designers to create ne-grained con gurations of products, and (2) integrates a product derivation process which uses decision models and Aspect-Oriented Programming facilitating the reuse, adaptation and composition of model transformation rules. We introduce constraint models which make it possible for product line architects to capture the scope of product lines using the concepts of constraint, cardinality property and structural dependency property. To con gure products, we create domain models and binding models, which are sets of bindings between model elements and variants and satisfy the constraint models. We de ne a decision model as a set of aspects. An aspect maintains information of when transformation rules that generate commonalities of products must be intercepted (joinpoints) and what transformation rules (advices) that generate variable structures must be executed instead. Our strategy maintains uncoupled variants from model transformation rules. This solves problems related to modularization, coupling, exibility and maintainability of transformations rules because they are completely separated from variants; thus, they can evolve independently.
منابع مشابه
Feature-Based Composition of Software Architectures
In Software Product Lines variability refers to the definition and utilization of differences between several products. Feature Diagrams (FD) are a well-known approach to express variability, and can be used to automate the derivation process. Nevertheless, this may be highly complex due to possible interactions between selected features and the artifacts realizing them. Deriving concrete produ...
متن کاملUML Support for Designing Software Product Lines: The Package Merge Mechanism
Software product lines have become a successful but challenging approach to software reuse. Some of the problems that hinder the adoption of this development paradigm are the conceptual gap between the variability and design models, as well as the complexity of the traceability management between them. Most current development methods use UML stereotypes or modify UML to face variability and tr...
متن کاملA Product Derivation Tool Based on Model-Driven Techniques and Annotations
In this paper, we present a model-based tool for product derivation. Our tool is centered on the definition of three models (feature, architecture and configuration models) which enable the automatic instantiation of software product lines (SPLs) or frameworks. The Eclipse platform and EMF technology are used as the base for the implementation of our tool. A set of specific Java annotations are...
متن کاملAutomating Staged Product Derivation for Heterogeneous Multi-Product-Lines
Software constitutes a major cost factor when developing technical systems. To reduce this cost, systematic reuse of assets is necessary from early on when developing similar products—an approach that has become known as software product line engineering. The automation of product derivation, that is, the automated product creation from core assets, is one of the success factors of product line...
متن کاملAn improved joint model: POS tagging and dependency parsing
Dependency parsing is a way of syntactic parsing and a natural language that automatically analyzes the dependency structure of sentences, and the input for each sentence creates a dependency graph. Part-Of-Speech (POS) tagging is a prerequisite for dependency parsing. Generally, dependency parsers do the POS tagging task along with dependency parsing in a pipeline mode. Unfortunately, in pipel...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009